package com.jmb.api.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jmb.api.common.exception.ParseException;
import com.jmb.api.model.to.api.suite.ApiCaseSuiteCaseRefTO;
import com.jmb.api.model.entity.ApiCaseSuiteCaseRef;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jmb.api.model.vo.api.suite.ApiCaseSuiteCaseRefVO;

import java.util.List;

/**
* @author jinbo
* @description 针对表【api_case_suite_case_ref】的数据库操作Service
* @createDate 2025-04-08 13:53:56
*/
public interface ApiCaseSuiteCaseRefService extends IService<ApiCaseSuiteCaseRef> {
    void saveSuiteCaseRef(List<ApiCaseSuiteCaseRef> caseSuiteCaseRef);

    void saveSuiteCaseRefSingle(ApiCaseSuiteCaseRef caseSuiteCaseRef);

    void editSuiteCaseRef(ApiCaseSuiteCaseRef caseSuiteCaseRef);

    void removeSuiteCaseRef(Integer id);

    void removeSuiteCaseRefByObject(ApiCaseSuiteCaseRef caseSuiteCaseRef);

    IPage<ApiCaseSuiteCaseRefVO> findSuiteCaseRefList(IPage<ApiCaseSuiteCaseRefVO> page,ApiCaseSuiteCaseRefTO caseSuiteCaseRefTO);

    List<ApiCaseSuiteCaseRefVO> findAllSuiteCaseRef(ApiCaseSuiteCaseRefTO caseSuiteCaseRefTO);

    String executeSuiteCaseById(Integer suiteId, String executor) throws ParseException;

    Integer executeCaseInSuite(Integer suiteId, Integer caseId, String executor);

}
